const tree = {
    val:"a",
    children:[
        {
            val: "b",
            children: [
                {
                    val:"d",
                    children:[]
                },
                {
                    val:"e",
                    children:[]
                }
            ]
        },
        {
            val: "c",
            children: [
                {
                    val:"f",
                    children:[]
                },
                {
                    val:"g",
                    children:[]
                }
            ]
        }
    ]
};

/**
 * @description 深度优先遍历算法
 * @description 传入根节点，输出根节点值，遍历根节点的所有子节点，对子节点调用深度优先遍历算法
 * @param root
 */
const dfs = (root) => {
    console.log(root.val);
    root.children.forEach(dfs);
};

dfs(tree);